home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / PROGRAMM / DB_CLIPP / 0292.ZIP / TRACKIT.ARC / TRACK_IT.PRG < prev    next >
Text File  |  1985-12-21  |  5KB  |  215 lines

  1. * FILE NAME           TRACK_IT.PRG
  2. * MAIN PROGRAM        TRACK_IT.PRG
  3. * PROGRAMMER          DAVID IRWIN
  4. * DATE WRITTEN        12/15/84
  5. * LAST UPDATE         01/08/85
  6. *
  7. *
  8. * This is the main driver for the TRACK-IT+ system and calls
  9. * only trackpro.prg, its procedure file.
  10. *
  11. *
  12. CLEAR
  13. CLEAR ALL
  14. SET EXCAPE OFF
  15. SET TALK OFF
  16. SET BELL OFF
  17. SET PROCEDURE TO trackpro
  18. USE trackrst INDEX trackrdx
  19. SELECT 2
  20. USE track_it INDEX tracknme, trackco, trackprd, tracknxt, tracksts
  21. SET FUNCTION 2 TO "2;"
  22. SET FUNCTION 3 TO "3;"
  23. SET FUNCTION 4 TO "4;"
  24. SET FUNCTION 5 TO "5;"
  25. SET FUNCTION 6 TO "6;"
  26. SET FUNCTION 7 TO "7;"
  27. SET FUNCTION 8 TO "8;"
  28. SET FUNCTION 9 TO "9;"
  29. SET FUNCTION 10 TO "10"
  30. PUBLIC action, choice, choice2, looper, tblanks, tseek
  31. STORE " " TO action, choice, choice2, string
  32. more = .T.
  33. dstring = DATE()
  34. * SET color to gr/b,w/r,
  35.  
  36. DO mainmenu
  37.  
  38. DO WHILE more
  39.    looper = .F.
  40.    action = " "
  41.    DO CASE
  42.  
  43.       CASE choice = "2"
  44.          tseek = "Last Name"
  45.          tblanks = 15
  46.          DO tstring
  47.          SET INDEX TO tracknme, trackco, trackprd, tracknxt, tracksts
  48.          DO if_blank
  49.  
  50.       CASE choice = "3"
  51.          tseek = "Company Name"
  52.          tblanks = 20
  53.          DO tstring
  54.          SET INDEX TO trackco, trackprd, tracknxt, tracksts, tracknme
  55.          DO if_blank
  56.  
  57.       CASE choice = "4"
  58.          tseek = "Product Name"
  59.          tblanks = 20
  60.          DO tstring
  61.          SET INDEX TO trackprd, tracknxt, tracksts, trackco, tracknme
  62.          DO if_blank
  63.  
  64.       CASE choice = "5"
  65.          @ 10,30 SAY "Date to Find" GET dstring PICTURE "@D"
  66.          READ
  67.          IF dtoc(dstring) = " "
  68.             looper = .T.
  69.             dstring = DATE()
  70.          ELSE
  71.             SET INDEX TO tracknxt, tracksts, tracknme, trackco, trackprd
  72.             SEEK dstring
  73.             IF eof()
  74.                string = dtoc(dstring)
  75.                dstring = ctod( "        " )
  76.             ENDIF eof()
  77.          ENDIF dtoc(dstring) = " "
  78.  
  79.       CASE choice = "6"
  80.          tseek = "Status"
  81.          tblanks = 1
  82.          DO tstring
  83.          SET INDEX TO tracksts, tracknme, trackco, trackprd, tracknxt
  84.          DO if_blank
  85.  
  86.       CASE choice = "7"
  87.          SET INDEX TO tracknme, trackco, trackprd, tracknxt, tracksts
  88.          SET FUNCTION 10 to dtoc(DATE())
  89.          APPEND BLANK
  90.          DO tscreen
  91.          DO tgets
  92.          SET FUNCTION 10 TO "10"
  93.          looper = .T.
  94.  
  95.       CASE choice = "8"
  96.          dot = .T.
  97.          DO WHILE dot
  98.             ACCEPT ". " TO string
  99.             IF len(string)=0 .OR. string= ' '
  100.                EXIT
  101.             ELSE
  102.                &string
  103.                ?
  104.             ENDIF len(string)=0 .OR. string= ' '
  105.          ENDDO WHILE dot
  106.          looper = .T.
  107.  
  108.       CASE choice = "9"
  109.          PUBLIC choice2
  110.          DO exitmenu
  111.          DO CASE
  112.             CASE choice2 = "1"
  113.                more = .F.
  114.                dos_exit = .F.
  115.                LOOP
  116.             CASE choice2 = "2"
  117.                more = .F.
  118.                dos_exit = .T.
  119.                LOOP
  120.          ENDCASE
  121.          looper = .T.
  122.  
  123.       CASE choice = "10"
  124.          tseek = "Last Name"
  125.          tblanks = 15
  126.          DO tstring
  127.          SELECT 1
  128.          GO TOP
  129.          IF lname # " "
  130.             APPEND BLANK
  131.          ENDIF lname # " "
  132.          SEEK upper(trim(string))
  133.          IF eof()
  134.             GO TOP
  135.          ENDIF eof()
  136.          BROWSE
  137.          SELECT 2
  138.          looper = .T.
  139.    ENDCASE
  140.    IF looper
  141.       DO mainmenu
  142.       LOOP
  143.    ENDIF looper
  144.    IF eof()
  145.       * SET color TO r/w,w/r,
  146.       @ 14,1
  147.       center = 40 - int(len(trim(string)) + 26)/2
  148.       @ 14,center SAY "No Records Found Matching " + trim(string)
  149.       ?? chr(7)
  150.       * SET color TO gr/b,w/r,
  151.       LOOP
  152.    ENDIF eof()
  153.    SET FUNCTION 10 TO dtoc(DATE())
  154.    error = .F.
  155.    CLEAR
  156.    DO tscreen
  157.    DO WHILE action # "D"
  158.       IF .not. error
  159.          DO tsays
  160.       ENDIF .not. error
  161.       action = " "
  162.       error = .F.
  163.       DO contline
  164.  
  165.       DO CASE
  166.          CASE action = "D"
  167.             LOOP
  168.          CASE action = "N"
  169.             SKIP
  170.             IF eof()
  171.                @ 23,1
  172.                @ 23,34 SAY "End of File !"
  173.                ? chr(7)
  174.                error = .T.
  175.                SKIP -1
  176.                LOOP
  177.             ENDIF eof()
  178.          CASE action = "P"
  179.             SKIP -1
  180.             IF bof()
  181.                @ 23,1
  182.                @ 23,29 SAY "First Record in File !"
  183.                ? chr(7)
  184.                error = .T.
  185.                GO recno()
  186.                LOOP
  187.             ENDIF bof()
  188.          CASE action = "E" .OR. action = "U"
  189.             @ 23,1 CLEAR
  190.             DO tgets
  191.          CASE action = "M"
  192.             SET FORMAT TO trackmem
  193.             CHANGE next 1 FIELDS notes
  194.             SET FORMAT TO
  195.             SKIP -1
  196.             CLEAR
  197.             DO tscreen
  198.          OTHERWISE
  199.             ? chr(7)
  200.             error = .T.
  201.       ENDCASE
  202.    ENDDO WHILE action # "D"
  203.    SET FUNCTION 10 TO "10"
  204.    CLEAR
  205.    DO mainmenu
  206.  
  207. ENDDO
  208. action = " "
  209. IF dos_exit
  210.    QUIT
  211. ENDIF dos_exit
  212. CLEAR
  213. CLEAR ALL
  214. RETURN
  215.